title: "大道至简: 用pre统一txt与html来记笔记"
date: 2009-12-21
categories:
- "office-work"
- "pkm-pim-notes-manager"
tags:
- "gvim"
大道至简: 用pre统一txt与html来记笔记
笔记软件层出不穷,乱花渐欲迷人眼。但深入体验过txt格式的极致开放、精简,领略过Vim等编辑神器的自由逍遥后,很多人返朴归真,近乎偏执地用Vim以txt格式来记笔记者。客观来讲,图片或简单格式也偶有需求。这种情况下,html是更好的选择。于是,思考:能否将txt与html统一起来呢?pre标签即可解决此问题。 所谓统一txt与html,就是在普通txt的开头加一个pre标签。这样,作为txt,它仍能在文本编辑器中,方便地阅读、编辑、搜索。同时,又能在浏览器下直接保持格式显示——免除了
换行、失去行首缩进的烦恼——从而为图片展现提供可能。也就是说,这种统一格式,在Vim中就是txt,在浏览器中就是html;可以理解为扩展的txt,也可以理解为极度精简的html。至于文件名后辍,纯属表象,任君选择。重要的它的实质:既得到了vim编辑txt的便利,又得到了浏览器显示html的功能扩展。【重要说明:本文是经验分享,并非推荐方案。本来就偏执txt/html/vim者,可读此文获得技巧。原本有其他工具的,请略过此文。】
pre 标签,是以txt为html的关键。它让txt中的tab缩进、回车换行仍能保留在html中。 但直接 pre 会导致过长的文字撑宽浏览器,要想自动换行,需要如下写法,以兼顾不同浏览器:
要支持图片,只须 标签。 通常,图片连号,可以复制/粘贴,然后,通过 Ctrl+A 和 Ctrl+X 直接加减即可。比如,复制一个 src=img-5.png,光标放在5上,按下2 ctrl+x,就成了 img-7.png (vim理解数字为负5,减2,得负7)。
为了在htm中有所突出,可增加一些标题标签。
在gVim中,“最基本”的命令是—— :!% !表示外部命令运行,可以理解成windows的运行之类。 %表示当前文件。 因此,上述命令就相当于在文件管理器双击此文件(从这方面讲,建议文件后辍为htm,以便于浏览器打开)
改进包括: - 在!前增加silent,以跳过cmd窗口。 - %放在双引号中,兼容路径含有中文或空格的情况。 - 进行map,一键运行。
这样的htm基本等于txt,既可以充分发挥VIM的能力,又能兼顾图片,比较满意。
abb zpre
inoremap ;h2 ^i$a
F<i vnoremap ;h2 "zdiz
F<i inoremap ;i3F"i inoremap ;st bba vnoremap ;st "ydiyF"i inoremap ;l F"i vnoremap ;l "ydiyF"i inoremap ;bq bba inoremap
2009-12-21:重写。 2006-07-05:初稿。 >